package com.yang.booking.pojo;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

@Data
@AllArgsConstructor
@NoArgsConstructor
public class Staff implements Serializable {
    @TableId(type = IdType.ASSIGN_UUID)
    private String Id;
    private String StoreId;
    private String Name;
    private String Position;
    private int Level;
    private String Employment;
    private String Good;
    private String Introduce;
    @TableField(exist = false)
    private int ItemNumber;
    @TableField(exist = false)
    private int AppNumber;
    @TableField(exist = false)
    private int Repeat;
    @TableField(exist = false)
    private int Service;
    private int AppSituation;
    private int OnlineShopOrder;
    private int SchedulingMethod;
    @TableField(exist = false)
    private List<Biweekly> biweeklyList= new ArrayList<>();
    @TableField(exist = false)
    private Appointment Appointment;
    @TableField(exist = false)
    private int CurrentBoardStatus;
//    @TableField(exist = false)
////    private boolean Prohibit;
////    @TableField(exist = false)
////    private int Rest;
//    @TableField(exist = false)
//    private boolean ConfirmedRest;
//    @TableField(exist = false)
//    private List<TimeSlot> timeSlotList = new ArrayList<>();
    @TableField(exist = false)
    private boolean Full;
    @TableField(fill = FieldFill.INSERT)
    private Date CreateAt;
    @TableField(fill = FieldFill.DEFAULT)
    private Date UpdateAt;

    public String getId() {
        return Id;
    }

    public void setId(String id) {
        Id = id;
    }

    public String getStoreId() {
        return StoreId;
    }

    public void setStoreId(String storeId) {
        StoreId = storeId;
    }

    public String getName() {
        return Name;
    }

    public void setName(String name) {
        Name = name;
    }

    public String getPosition() {
        return Position;
    }

    public void setPosition(String position) {
        Position = position;
    }

    public int getLevel() {
        return Level;
    }

    public void setLevel(int level) {
        Level = level;
    }

    public String getEmployment() {
        return Employment;
    }

    public void setEmployment(String employment) {
        Employment = employment;
    }

    public String getGood() {
        return Good;
    }

    public void setGood(String good) {
        Good = good;
    }

    public String getIntroduce() {
        return Introduce;
    }

    public void setIntroduce(String introduce) {
        Introduce = introduce;
    }

    public int getItemNumber() {
        return ItemNumber;
    }

    public void setItemNumber(int itemNumber) {
        ItemNumber = itemNumber;
    }

    public int getAppNumber() {
        return AppNumber;
    }

    public void setAppNumber(int appNumber) {
        AppNumber = appNumber;
    }

    public int getRepeat() {
        return Repeat;
    }

    public void setRepeat(int repeat) {
        Repeat = repeat;
    }

    public int getService() {
        return Service;
    }

    public void setService(int service) {
        Service = service;
    }

    public int getAppSituation() {
        return AppSituation;
    }

    public void setAppSituation(int appSituation) {
        AppSituation = appSituation;
    }

    public int getOnlineShopOrder() {
        return OnlineShopOrder;
    }

    public void setOnlineShopOrder(int onlineShopOrder) {
        OnlineShopOrder = onlineShopOrder;
    }

    public int getSchedulingMethod() {
        return SchedulingMethod;
    }

    public void setSchedulingMethod(int schedulingMethod) {
        SchedulingMethod = schedulingMethod;
    }

    public List<Biweekly> getBiweeklyList() {
        return biweeklyList;
    }

    public void setBiweeklyList(List<Biweekly> biweeklyList) {
        this.biweeklyList = biweeklyList;
    }

    public Appointment getAppointment() {
        return Appointment;
    }

    public void setAppointment(Appointment appointment) {
        this.Appointment = appointment;
    }

    public int getCurrentBoardStatus() {
        return CurrentBoardStatus;
    }

    public void setCurrentBoardStatus(int currentBoardStatus) {
        CurrentBoardStatus = currentBoardStatus;
    }

    //    public boolean isProhibit() {
//        return Prohibit;
//    }
//
//    public void setProhibit(boolean prohibit) {
//        Prohibit = prohibit;
//    }
//
//    public int getRest() {
//        return Rest;
//    }
//
//    public void setRest(int rest) {
//        Rest = rest;
//    }

    //    public boolean isConfirmedRest() {
//        return ConfirmedRest;
//    }
//
//    public void setConfirmedRest(boolean confirmedRest) {
//        ConfirmedRest = confirmedRest;
//    }

    //    public List<TimeSlot> getTimeSlotList() {
//        return timeSlotList;
//    }
//
//    public void setTimeSlotList(List<TimeSlot> timeSlotList) {
//        this.timeSlotList = timeSlotList;
//    }


    public boolean isFull() {
        return Full;
    }

    public void setFull(boolean full) {
        Full = full;
    }

    public Date getCreateAt() {
        return CreateAt;
    }

    public void setCreateAt(Date createAt) {
        CreateAt = createAt;
    }

    public Date getUpdateAt() {
        return UpdateAt;
    }

    public void setUpdateAt(Date updateAt) {
        UpdateAt = updateAt;
    }
}
